There are situations in which a requester requests services that need to be processed under the identity of multiple users. Currently, there are mechanisms for satisfying these requests.
One mechanism includes issuing a request to a general purpose server capable of processing requests under multiple user identifiers. In response to receiving a request that is to be processed under the identity of a particular user, the server assumes the identity of that user and then processes the request. After processing the request, the server switches back to a general purpose server. This mechanism has the disadvantage, however, that the requests need to be serialized from the requestor to the server, so that the requestor is only asking on behalf of one user at any point in time.
Another mechanism includes having the general purpose server, in response to receiving the request, start a user server to run the request. When that user server processes the request, it terminates. Thus, with this mechanism the user server needs to be started each time a request is received, which is time-consuming and wastes resources.